package com.lvy.hczn.front.system.service;

import java.util.List;

import com.baomidou.mybatisplus.extension.service.IService;
import com.lvy.hczn.front.system.domain.business.PackSpec;

/**
 * 包装规格信息Service接口
 *
 * @author ruoyi
 * @date 2023-07-09
 */
public interface PackSpecService extends IService<PackSpec> {
    /**
     * 查询包装规格信息
     *
     * @param id 包装规格信息主键
     * @return 包装规格信息
     */
    PackSpec selectPackSpecById(String id);

    /**
     * 查询包装规格信息列表
     *
     * @param packSpec 包装规格信息
     * @return 包装规格信息集合
     */
    List<PackSpec> selectPackSpecList(PackSpec packSpec);

    /**
     * 新增包装规格信息
     *
     * @param packSpec 包装规格信息
     * @param sync     是否同步，true：是，false：否
     * @return 结果
     */
    int insertPackSpec(PackSpec packSpec, boolean sync);

    /**
     * 修改包装规格信息
     *
     * @param packSpec 包装规格信息
     * @param sync     是否同步，true：是，false：否
     * @return 结果
     */
    int updatePackSpec(PackSpec packSpec, boolean sync);

    /**
     * 批量删除包装规格信息
     *
     * @param ids 需要删除的包装规格信息主键集合
     * @return 结果
     */
    int deletePackSpecByIds(String ids);

    /**
     * 删除包装规格信息信息
     *
     * @param id 包装规格信息主键
     * @return 结果
     */
    int deletePackSpecById(String id);

    /**
     * 修改或保存
     *
     * @param packSpec
     * @param sync     是否同步，true：是，false：否
     */
    void saveOrUpdateInfo(PackSpec packSpec, boolean sync);
}
